package com.jy.books.mapper;

import java.util.List;
import com.jy.books.domain.Books;
import com.jy.records.domain.BorrowRecords;

/**
 * 图书管理Mapper接口
 * 
 * @author ruoyi
 * @date 2025-05-29
 */
public interface BooksMapper 
{
    /**
     * 查询图书管理
     * 
     * @param bookId 图书管理主键
     * @return 图书管理
     */
    public Books selectBooksByBookId(Long bookId);

    /**
     * 查询图书管理列表
     * 
     * @param books 图书管理
     * @return 图书管理集合
     */
    public List<Books> selectBooksList(Books books);

    /**
     * 新增图书管理
     * 
     * @param books 图书管理
     * @return 结果
     */
    public int insertBooks(Books books);

    /**
     * 修改图书管理
     * 
     * @param books 图书管理
     * @return 结果
     */
    public int updateBooks(Books books);

    /**
     * 删除图书管理
     * 
     * @param bookId 图书管理主键
     * @return 结果
     */
    public int deleteBooksByBookId(Long bookId);

    /**
     * 批量删除图书管理
     * 
     * @param bookIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteBooksByBookIds(Long[] bookIds);

    /**
     * 批量删除借阅记录
     * 
     * @param bookIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteBorrowRecordsByBookIds(Long[] bookIds);
    
    /**
     * 批量新增借阅记录
     * 
     * @param borrowRecordsList 借阅记录列表
     * @return 结果
     */
    public int batchBorrowRecords(List<BorrowRecords> borrowRecordsList);
    

    /**
     * 通过图书管理主键删除借阅记录信息
     * 
     * @param bookId 图书管理ID
     * @return 结果
     */
    public int deleteBorrowRecordsByBookId(Long bookId);
}
